#pragma once
class MarketPrices
{
public:

	/*
	1 gold coin   <--> 100 silver coins
	1 silver coin <--> 100 copper coins
	Maximum copper coins for a price is 99, 100 copper coins have to be considered as 1 silver coin
	Maximum silver coins for a price is 99, 100 silver coins have to be considered as 1 gold coin
	*/

	MarketPrices(const int& c = 0, const int& s = 0, const int& g = 0) : copperPrice(c), silverPrice(s), goldPrice(g) { updateCoinNumber(); }
	~MarketPrices();
	MarketPrices(const MarketPrices& m);
	MarketPrices& MarketPrices::operator=(const MarketPrices& m);

	//accessors
	int getCopper() const { return copperPrice; }
	int getSilver() const { return silverPrice; }
	int getGold() const { return goldPrice; }
	void getCompletePrice(int& c, int& s, int& g);

	//mutators
	void setCopper(int c);
	void setSilver(int s);
	void setGold(int g);
	void setPrice(int c, int s, int g);

private:
	int goldPrice, silverPrice, copperPrice;

	void updateCoinNumber();
};

